【AWS】統合脅威管理「Sophos UTM」を使ってVPCへSSL-VPN接続する(iPhone編)
はじめに
こんにちは植木和樹です。先日「【AWS】統合脅威管理「Sophos UTM」を使ってiPhoneからVPCへIPsec-VPN接続する」というエントリでSophos UTMをVPNサーバーとしたIPsec接続を行う方法を紹介しました。
Sophos UTMではIPsec-VPN以外にもSSL-VPNをサポートしています。IPsec-VPNは「拠点間VPN接続」、SSL-VPNは「リモートアクセス」に適した接続方法だそうです。本日はSSL-VPNを用いて様々な機器(Windows7, iPhone, Android)からのリモートアクセスを試してみたいと思います。長くなりそうなので機器ごとにエントリを分けたいと思います。
- 【AWS】統合脅威管理「Sophos UTM」を使ってVPCへSSL-VPN接続する(Windows7編)
- 【AWS】統合脅威管理「Sophos UTM」を使ってVPCへSSL-VPN接続する(Android編)
環境
システム構成図
接続先Webサーバーの用意
EC2サーバーにApacheをインストールしWebサーバーとしています。接続されるWebサーバー側は以下の項目を設定するのを忘れないようにしましょう。
- VPC Route Tableで「VPN Pool(SSL)」のルーティングをSophosサーバーに向ける。
- EC2のセキュリティグループで「VPN Pool(SSL)」アドレスレンジからの接続を許可する。
特にRoute Tableを設定し忘れると、帰りのパケットがInternet Gatewayに行ってしまい接続を確立できませんので注意してください。
なおSSL-VPNで接続したクライアントに割り当てられるIPアドレスのレンジは[ネットワーク定義]の画面で確認・変更することができます。
SSL-VPNサーバー側の設定
まずSophos側の設定を行います。
接続ユーザーの作成
Sophosの初期設定と接続ユーザーの作成はIPsec-VPNと同じです。「【AWS】統合脅威管理「Sophos UTM」を使ってiPhoneからVPCへIPsec-VPN接続する」の「リモートアクセスユーザーを作成する」までを参考にユーザーを作成しておきます。
SSL-VPN接続設定
[リモートアクセス]-[SSL]をクリックして設定画面を開きます。
プロファイル名に「my-ssl-vpn」と入力します。次にユーザーとグループのフォルダのアイコンをクリックし、画面左側に表示されるユーザー一覧からVPN接続を許可するユーザーをドラッグアンドドロップで追加します。ユーザーが複数の場合は事前にユーザーをグループに追加して、グループに対して接続許可をするのが良いでしょう。
ローカルネットワークのフォルダアイコンをクリックし、画面左側に表示されるネットワーク一覧からVPN経由のユーザーに対して接続を許可するネットワークを選択します。ユーザーと同様ドラッグアンドドロップで追加することができます。
ユーザーとネットワークの設定が終わったら「保存」をクリックします。
iPhoneからの接続
端末はiPhone5(iOS 6.1.4)を使いました。VPN接続には関係ないと思いますが、キャリアはSoftbankです。
2013/10/23 追記:iOS 7.0.3 での動作を確認しました。
iPhoneへのSSL-VPNクライアントのインストール
iPhoneでSafariブラウザを起動し、SophosのグローバルIP(EIP)にHTTPSで接続してユーザーポータル画面を開きます。「識別情報が検証できない」というメッセージがでますが「続ける」をクリックします。
ユーザーとパスワードを入力してログインします。
画面上部の「リモートアクセス」をクリックします。
画面下にiPhone/Android用の設定があります。設定をダウンロードする前に文中のリンクをクリックしてiPhone用SSL-VPNクライアントソフトをインストールします。
リンクをクリックするとAppStoreの画面が開きます。
ボタンをクリックしてインストールを行います。
OpenVPNのクライアントソフトがインストールできました。この画面はそのままにして、再度Safariの画面に戻ってください。
SSL-VPN設定のインストール
先ほどのiPhone/Android用設定の「Install」ボタンをクリックし、VPN設定をインストールします。
「OpenVPNで開く」をクリックすると設定のインストールが始まります。
新しいプロファイルがiPhoneにインストールされたので、プラスのアイコンをクリックしてインポートします。
SSL-VPNでの接続
VPNの接続画面が開きますので、ユーザーとパスワードを入力します。パスワードを入力後リターンキーをタップするとVPN接続が開始されます。なおオススメはしませんが「Save」スイッチを右側にしておくと入力したパスワードを保存しておくことができるため、次回以降入力が不要になります。
VPN接続して良いか確認されますので「Yes」をタップします。
状態が "Connecting..." に変わり、しばらくするとVPN接続が確立されます。iPhoneの画面上部にVPNのアイコンが表示されていればVPN接続中になります。
これでiPhoneとVPCがVPNで接続されました。WebサーバーにプライベートIPアドレスで接続してみましょう。
成功です!画面が表示されました!
Sophos管理画面の[リモートアクセス]をクリックすると、接続中のオンラインユーザーを確認することができます。
2013/10/23 追記:iOS 7.0.3 での動作を確認しました。
SSL-VPNの切断・再接続
なおVPNの切断や再度VPN接続を行いたい場合は、インストールしたOpenVPNのアプリケーションを起動して画面からスイッチを操作してください。
ユーザーのVPN接続を拒否したい場合
たとえばiPhoneを紛失してしまった場合などは、そのiPhoneからのVPN接続を禁止することができます。[ユーザーとグループ]からユーザー一覧画面を開き、対象ユーザーのステータスを無効にします。
すると、iPhoneからVPN接続しようとすると認証失敗となって接続できなくなりました。
まとめ
iPhoneではユーザーポータル画面からSSL-VPNのクライアントアプリも設定のインストールもできるため、とても簡単にSSL-VPNを設定することができました。Sophos側の設定画面もわかりやすいので、おそらくSophos用EC2の起動から始めても半日もかからずSSL-VPNを設定できるかと思います。まさに早い、安い、簡単ですね。
AWSでSSL-VPNを検討されている方は、ぜひSophos UTMを試してみてください!